Міністерство освіти та науки України
Національний університет «Львівська політехніка»
Інститут комп’ютерних технологій автоматики і метрології
Кафедра ЕОМ
ЗВІТ
З навчальної практики з дисципліни
Об'єктно орієнтованого прогрограмування
Львів 2009
Мета практити
Розвинути навики використання Об’єктно-Орієетованого Програмування (ООП) при створенні програмних продуктів для операційної системи Windows та системного програмного забезпечення. Засвоїти навики використання типових об’єктно-орієнтованих бібліотек при розробці сучасного графічного інтерфейсу користувача. Познайомитись з бібліотекою класів MFC, навчитись створювати віконні програми, що будуються на основі діалогу, одно- та багатодокументної архітектури.
Частина 1.
Завдання:
Розробити клас CСomplex за допомогою якого візуальна програма буде виконуватись прості математичні операції над комплексними числами.
Основними методами класу є:
void CAdd(double re, double im); - Виконує операцію додавання
void CSub(double re, double im); - Виконує операцію віднімання
void CMul(double re, double im); - Виконує операцію множення
void CDiv(double re, double im); - Виконує операцію ділення
void CRes(double re, double im); - Виводить результат операції
double GetRe(); - повертає значення дійсної частини комплексного числа
double GetIm();- повертає значення уявної частини комплексного числа
void ToFile() – записує у файл;
Вікно програми:
Аналіз виконання Частини 2:
Завдання:
Розробити програму на основі, однодокументного проекту, за допомогою якої будуть відкриватис і редагуватись текстові файли.
Основними класами і методами є:
class CDocumentView : public CeditView – клас вигляду, на основі класу CeditView
virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo); початок друку
virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo) – завершення друку;
class CDocumentDoc : public Cdocument – клас документ, відповідає за вміст документу
Вигляд програми:
Аналіз виконання Частини 3:
Завдання:
Розробити багатодокументну програму на основі класу ClistView, за допомогою якої буде читатись текстовий документ і відображатись у вигляді таблиці
Частина 3
Основними структурами є:
struct StableRow – структура таблиці
class CStoreTableDoc : public Cdocument – клас відповідає за роботу з документом програми
class CStoreTableView : public ClistView – клас який відповідає за вигляд таблиці, на основі красу ClistView
У середовищі Visual Studio 2008 створюємо багатодокументну програму..
Вигляд програми:
Висновок: на навчальній практиці я навчився працювати з візуальним середовищем розробки MS Visual Studio 2008, навчився працювати з стандартною бібліотекою компонентів MFC, а зокрема розробляти програми на основі діалогового проекту, однодокуметного проекту і багатодокументного проекту.
Додаток 1
Код програми:
#pragma once
#include "afxwin.h"
class CComplex {
private:
double m_Re, m_Im;
char m_oper;
CString m_ReS, m_ImS;
CString m_text;
CStdioFile file;
public:
CComplex();
void CAdd(double re, double im);
void CSub(double re, double im);
void CMul(double re, double im);
void CDiv(double re, double im);
void CRes(double re, double im);
double GetRe();
double GetIm();
void ToFile();
};
#include "stdafx.h"
#include "CComplex.h"
CComplex::CComplex (){
m_Re = 0;
m_Im = 0;
file.Open ((CString)"Operation.txt", CFile::modeCreate );
file.Close ();
}
void CComplex::CAdd (double re, double im){
m_Re = re;
m_Im = im;
m_oper = '+';
m_ReS.Format ((CString)"%0.1Lf", m_Re);
m_ImS.Format ((CString)"%0.1Lf", m_Im);
m_text =(CString)"(" + m_ReS +(CString)" + " + m_ImS +(CString)"i) + ";
}
void CComplex::CSub(double re, double im){
m_Re = re;
m_Im = im;
m_oper = '-';
m_ReS.Format ((CString)"%0.1Lf", m_Re);
m_ImS.Format ((CString)"%0.1Lf", m_Im);
m_text =(CString)"(" + m_ReS +(CString)" + " + m_ImS +(CString)"i) - ";
}
void CComplex::CMul (double re, double im){
m_Re = re;
m_Im = im;
m_oper = '*';
m_ReS.Format ((CString)"%0.1Lf", m_Re);
m_ImS.Format ((CSt...